/*
 * Copyright© 2003-2019 浙江汇信科技有限公司, All Rights Reserved.
 */
package com.icinfo.cloud.provider.punish.ucase.casemain.service;

import com.alibaba.fastjson.JSONObject;
import com.icinfo.cloud.provider.punish.ucase.casemain.dto.CaseTemporaryRecordQueryDto;
import com.icinfo.cloud.provider.punish.ucase.casemain.dto.CaseTemporarySaveDto;
import com.icinfo.cloud.provider.punish.ucase.casemain.model.CaseTemporaryRecord;
import com.icinfo.framework.core.service.BaseService;

/**
 * 描述: 文书内容暂存表 case_temporary_record 对应的Service接口.<br>
 *
 * @author framework generator
 * @date 2022年03月24日
 */
public interface ICaseTemporaryRecordService extends BaseService {

    /**
     * 暂存
     *
     * @param saveDto 保存dto
     * @return boolean
     * @author shishengyao
     * @date 2022/07/13
     */
    boolean saveTemporary(CaseTemporarySaveDto saveDto);

    /**
     * 获取暂存数据
     *
     * @param caseId
     * @param documentCatalogCode
     * @return CaseTemporaryRecord
     */
    CaseTemporaryRecord getRecord(String caseId, String documentCatalogCode,String partyId);

    /**
     * 描述：删除暂存数据
     *
     * @param caseId              用例id
     * @param documentCatalogCode 文件目录的代码
     * @param partyId 当事人id
     * @return int
     * @author shishengyao
     * @date 2022/04/19
     */
    int removeTemporary(String caseId, String documentCatalogCode, String partyId);

    /**
     * @Author: zhengqiang
     * @Date: 2022/5/13
     * @Description: 获取文书暂存记录
     * @param: caseTemporaryRecordQueryDto
     * @return: com.icinfo.cloud.provider.punish.ucase.casemain.model.CaseTemporaryRecord
     **/
    CaseTemporaryRecord getRecord(CaseTemporaryRecordQueryDto caseTemporaryRecordQueryDto);

    /**
     * 描述：删除暂存数据
     *
     * @param caseId              用例id
     * @param documentCatalogCode 文件目录的代码
     * @return int
     * @author shishengyao
     * @date 2022/05/23
     */
    int removeTemporary(String caseId, String documentCatalogCode);

    /**
     * 描述：移除所有案件相关的暂存数据
     *
     * @param caseId 案件id
     * @return int 移除成功记录数
     * @author xiangyuyu
     * @date 2022-07-07 17:28
     */
    int removeAllTemporaryWithCaseId(String caseId);
}
